package models

import "one-project/dao"

type Todo struct {
	ID uint `json:"id"`
	Title string `json:"title"`
	Status bool `json:"status"`
}

func InitTodoModel() {
	dao.DB.AutoMigrate(&Todo{})
}

func CreateSingleTodo(todo *Todo) (err error) {
	if err = dao.DB.Create(todo).Error; err != nil {
		return err
	}

	return
}

func GetTodoList(todo *[]Todo) (err error) {
	if err = dao.DB.Find(todo).Error; err != nil {
		return err
	}

	return
}

func GetSingleTodo(id string, todo *Todo) (err error) {
	if err = dao.DB.Where("id=?", id).First(todo).Error; err != nil {
		return err
	}

	return
}

func UpdateSingleTodo(todo *Todo) (err error) {
	if err = dao.DB.Save(todo).Error; err != nil {
		return err
	}

	return
}

func DeleteSingleTodo(id string) (err error) {
	if err = dao.DB.Where("id=?", id).Delete(&Todo{}).Error; err != nil {
		return err
	}

	return
}
